1. Field of the Invention
The present invention relates to an Internet telephone connection method for performing a call connection, etc. to a PSTN (public switched telephone network) through a gateway device for use in an Internet telephone system having a gateway device, a gate keeper, a bandwidth controller, and a router, etc.
2. Description of the Related Art
A method of implementing a protocol for servicing a telephone call from Internet to a PSTN is provided in Recommendation H.323 of ITU-T (International Telecommunication Union-Telecommunication Standardization Sector). In H.323, a gateway device for performing the interconnection processing between a PSTN and the Internet, and a gate keeper for managing/controlling plural gateway devices are used as main constituent elements. The gateway device performs conversion of a call control protocol and audio signals between the PSTN and the Internet. The gate keeper serves to manage the gateway devices in a zone under its control, and mainly performs selection of a connection destination gateway, authorization and admission control of a calling side, and allocation of a telephonic communication bandwidth in response to a call setup request from an IP (Internet Protocol) terminal or a gateway device.
In a case where a gateway device at a calling side (i.e., a call source), a gateway device at a called side (call destination) and a gate keeper are provided, the calling side gateway device which accepts a call reception from a PSTN assigns a connection condition such as the telephone number of a connection destination, etc. and inquires to the gate keeper. In response to this inquiry, the gate keeper determines the address of a called side gateway device which satisfies the request condition, and notifies it to the calling side gateway device. Subsequently, the calling side gateway device proceeds in the connection of the call to the called side gateway device. When a call setup is accepted between the gateway devices at the calling side and the called side, audio data are transmitted/received according to a protocol for transferring real-time data. In other words, the three-step procedures, that is, a procedure of determining the gateway device of a connection destination, a procedure of connecting a call to the gateway device thus determined and a procedure of transferring real-time information between the gateway devices thus connected are carried out for the call connection. The calling side gateway device may be designed in the form of an IP terminal having a telephone function.
Guidelines for the attribute information of the gateway device is specified in xe2x80x9ca Framework for a Gateway Location Protocolxe2x80x9d (IPTEL Working Group, Jul. 7, 1998) which has been considered by IETF (Internet Engineering Task Force). According to the guidelines, an assembly of gateway devices managed by the same gate keeper are defined as a zone, and it is assumed to extend to a form comprising plural zones. As the attribute information of the gateway device, there is provided the phone prefixes allowed, the address of a gateway device, the specification for voice coding, a signal protocol to be supported, a cost plan, a billing method, the confederation of membership, a total line capacity, an available line capacity, information concerning additive features supported, etc.
Here, the phone prefixes allowed represents an assembly of connectable telephone numbers when a connection is made from the gateway device thereof to a PSTN. Such attribute information is generally set in each gateway device by a maintainer or the like. In the following description, information causing a problem in connection such as a signal protocol supported by the phone prefixes allowed in the attribute information is referred to as xe2x80x9cend-end attribute informationxe2x80x9d.
The standardization of IETF aims to specify means for automatically registering the above attribute information into a gate keeper and means for informing the information to other gate keepers. With these means, when a new gateway device is connected to the Internet, the attribute information to be informed is automatically distributed to all the gate keepers which are mutually connected to one another using the protocol.
According to the model provided in IETF, there are assumed not only a case where only one gateway device is selected by the gate keeper, but also a case where a destination gateway device is selected from plural choices. Accordingly, if a gateway device at a calling side is aware of any problem/congestion condition or the like at a called side, a backup mechanism to enhance the reliability could be implemented. An available line capacity and an operation/stop state of the gateway device itself may be considered as the attribute information on the problem/congestion condition.
After a gateway device at a connection destination is selected and a pair of gateway devices are determined, a call connection is carried out according to the procedure of H.323. Whether a desired bandwidth can be secured between the gateway devices becomes clear after the protocol procedure after the connection proceeds. Therefore, if the Internet is in a congested condition, a desired quality of connection may not be provided. There is proposed a gateway device having a communication bandwidth reserving procedure such as RSVP (Resource Reservation Protocol) standardized in IETF, as described in Chapter 2 of xe2x80x9cDelivering Voice over IP Networksxe2x80x9d (written by D. Minoli, E. Minoli). The RSVP procedure is a procedure for reserving a oneway bandwidth from a called side to a calling side. According to this procedure, bandwidths are successively ensured via routers from the application at the called side to the application at the called side. In this case, reservations requesting the same bandwidth from both the sides are needed for voice traffic which needs a symmetrical bandwidth between upward and downward directions. If each application reserves a desired bandwidth with no limitation, a bandwidth-over event would occur and it is generally known that it is impossible to implement the perfect bandwidth guarantee in RSVP.
In the above conventional technique, when an IP terminal is connected to a PSTN through a gateway device, a communication bandwidth is allocated every time a call request occurs. Therefore, a total line capacity for call connection may not be ensured if the Internet is congested although there is an available communication line between the gateway device and the PSTN. Further, when a reservation procedure of reserving a communication bandwidth is used, the reservation of the optimum bandwidth in the overall network cannot be implemented because the gateway device has no means of ascertaining the bandwidth reservation status of the other gateway devices. In addition, since the perfect guarantee cannot be implemented even for reserved bandwidth, communication quality may not be ensured even when a call is setup on a reserved bandwidth. Still further, the telephone traffic amount and the data traffic amount vary with time, and thus the network resources could not be effectively used unless control based on prediction of load can be implemented.
A first object of the present invention is, in view of the above described problem, to ensure a fixed-quality communication bandwidth matched with a traffic demand between gateway devices in the Internet, enhance reliability and flexibly support variation of a traffic condition.
In the prior art, it is necessary to use a system of setting up a call for every request between gateway devices each having a relatively small traffic amount from the viewpoint of effective use of communication bandwidths of the network. When the connection is made according to the three-step procedure as described above, there is a case where a call connection to the gateway device of a connection destination selected in the first step does not succeed. This may be caused by some problem at some intermediate point in the route, some problem of the gateway device at the connection destination, impossibility of ensuring a guaranteed communication bandwidth due to congestion in the Internet, a line busy/trouble between the gateway device and the PSTN, etc. In order to perform services irrespective of the above problems with the Internet, it is necessary to provide plural gateway devices and set additional routes.
In the construction having additional routes, how to detect a problem and select an additional route is important. In a method of detecting the problem of a gateway device by a gate keeper and notifying it to each gate keeper in the Internet, it is necessary to transfer a lots of packets when the number of gateway devices and gate keepers is increased. Further, when another problem of the gate keeper itself occurs in addition to the above problems, the system itself does not function. In the Internet telephone system, there is a need for a certain manner in which when a connectability problem to a specific gateway device is detected, the gateway device concerned is automatically removed from the logic of selection and re-installed after restoration.
From the above viewpoint, a second object of the present invention aims to implement a high-reliability gateway device management system of detecting the connectability problem to a gateway device to select the optimum gateway device.
In the prior art, the attribute information registered in the gateway device is distributed to each gate keeper according to the protocol procedure. Here, when erroneous data are set in the end-end attribute information of the attribute information, the connectability problem occurs. For example, if there is any setting mistake in the phone prefix allowed, an incorrect gate device is selected and failure of call connection occurs frequently.
Further, the gate keeper distributes the attribute information of a gateway device to other gate keepers. When there is a failure in software in the gate keeper, erroneous data are informed into the network, resulting in causing the problem with respect to connectability in the overall network. In addition, when the gateway device updates the attribute information and informs new attribute information, the attribute information may not be informed to all the gate keepers due to a communication problem or the like.
From the foregoing viewpoint, a third object of the present invention aims to implement a robust Internet telephone service by implementing a logic in which when erroneous data are detected, the gateway device thereof is not selected until it is restored.
In order to attain the first object, according to the present invention, a bandwidth controller for managing reservation of a communication bandwidth with a gateway device at a called side is provided on the Internet. A voice relay router for relaying and transferring a voice packet is provided for an IP terminal. The bandwidth controller has a database in which a communication bandwidth to be reserved and ensured is registered on a time basis, and has a procedure of instructing a gateway device or a voice relay router to reserve a-communication path using an indicated bandwidth at a predetermined time on the basis of the database. The gateway device or the voice relay router to which the bandwidth is reserved is provided with a procedure of checking connectability and communication quality periodically, and is also provided with a procedure of notifying deterioration in quality to the bandwidth controller when the communication quality is out of a predetermined range.
For the connection of a voice call, when there is a reserved bandwidth, the calling side gateway device sets up a call on the bandwidth concerned. The gate keeper is provided with means of notifying the address of the nearest voice relay router to an IP terminal when the calling side is the IP terminal. Upon accepting a telephone call from the IP terminal, the voice relay router sets up a call on the reserved bandwidth between it and the gateway device concerned.
In order to attain the second object, according to the present invention, there is provided means of informing a gate keeper of the fact that a called side gateway device has a problem in connectability and of a cause inducing the problem. Further, the gate keeper sets the gateway device having the connectability problem as being xe2x80x9cout of servicexe2x80x9d on the database. Thereafter, if there is any substitute gateway device when the address of the gateway device at a connection destination is determined, the gate keeper excludes the gateway device being out of service from selection targets (i.e., makes the gateway device unselectable). The gate keeper has a testing function of periodically monitoring the connectability to gateway devices, and when the connectability to the gateway device being out of service is restored, it returns the xe2x80x9cout of servicexe2x80x9d on the database to xe2x80x9cin servicexe2x80x9d. Further, the gate keeper notifies variation of the state of the gateway device to other gate keepers, and the gate keepers receiving the notification likewise sets xe2x80x9cout of servicexe2x80x9d to monitor the gateway device concerned.
In order to attain the third object, according to the present invention, the gateway device is provided with means for notifying to the gate keeper information which may be erroneous data, and the gate keeper is provided with means for reading and checking the attribute information of the gateway device concerned, and means of setting the gateway device as being xe2x80x9cinappropriate dataxe2x80x9d on the database and thus enforcing that it is not selected when the attribute information has an error. The database in the gate keeper is returned to the xe2x80x9cin servicexe2x80x9d at the time when new attribute information of the gateway device concerned is notified. Further, the gate keeper notifies the xe2x80x9cinappropriate dataxe2x80x9d of the gateway device to the other gate keepers. The gate keeper receiving this notification likewise sets the xe2x80x9cinappropriate dataxe2x80x9d and excludes the gateway device concerned from the selection logic.
According to a first aspect of the present invention to attain the first object, in an Internet telephone connection method for use in the Internet, which includes gateway devices for mutually connecting a PSTN and the Internet, a gate keeper for managing the gateway devices in a zone and a bandwidth controller for managing the gate keeper in each zone, the gate keeper stores information on a communication bandwidth to be reserved into an internal storage device; the bandwidth controller extracts information on a communication bandwidth to be reserved from the gate keeper and instructs to make a reservation between the gateway device and a counter gateway device, cancel the reservation or alter the reservation content. The gateway device reserves a communication bandwidth between itself and the counter gateway device, wherein when a call request is made from a calling terminal in a PSTN to a called terminal in another PSTN, a calling side gateway device which is connected to the PSTN at the calling side notifies the telephone number of a call destination to the gate keeper to determine the corresponding called side gateway device, and the calling side and called side PSTNs and the Internet are connected via the Internet by using a communication bandwidth reserved between the calling side gateway device and the called side gateway device, thereby connecting the calling side terminal to the called side terminal.
According to a second aspect of the present invention to attain the second object, in the first aspect, when the connection to the gateway device notified from the gate keeper fails due to some problem, congestion or the like, the calling side gateway device notifies to the gate keeper that some problem has occurred in connectability of the called side gateway device, and the gate keeper determines another connectable gateway device when receiving from the calling side gateway device the notification indicating the failure of the connection to the called side gateway device, and stores the status of the called side gateway device as xe2x80x9cout of servicexe2x80x9d, and also notifies the xe2x80x9cout of servicexe2x80x9d to other gate keepers.
According to a third aspect to the present invention to attain the third object, in the first aspect, the gate keeper requests the called side gateway device to notify the attribute information when the connection as requested cannot be established, compares the attribute information notified from the called side gateway device with the attribute information of the called side gateway device stored in the database thereof, sets the called side gateway device to a data invalid state on the database thereof and excludes the gateway device concerned from selection targets when the attribute information is erroneous, and notifies the invalid state to the other gate keepers.